Scalable Load Distribution and Load Balancing for Dynamic Parallel Programs

نویسندگان

  • E. Berger
  • J. C. Browne
چکیده

This paper reports design and preliminary evaluation of an integrated load distribution-load balancing algorithm which was targeted to be both efficient and scalable for dynamically structured computations. The computation is represented as a dynamic hierarchical dependence graph. Each node of the graph may be a subgraph or a computation and the number of instances of each node is dynamically determined at runtime. The algorithm combines an initial partitioning of the graph with application of randomized work stealing on the basis of subgraphs to refine imbalances in the initial partitioning and balance the additional computational work generated by runtime instantiation of subgraphs and nodes. Dynamic computations are modeled by an artificial program (k-nary) where the amount of parallelism is parameterized. Experiments on IBM SP2s suggest that the load balancing algorithm is efficient and scalable for parallelism up to 10,000 parallel threads for closely coupled distributed memory architectures.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Load Balancing in a Parallel Graph Reducer

Parallel graph reducers such as GUM use dynamic techniques to manage resources during execution. One important aspect of the dynamic behaviour is the distribution of work. The load balancing mechanism, which controls this aspect, should be flexible, to adjust the distribution of work to hardware characteristics as well as dynamic program characteristics, and scalable, to achieve high utilisatio...

متن کامل

Using Agents for Parallel Programming in Workstation Networks

Actual systems supporting dynamic load distribution for parallel programs such as Dynamo [3] manage load distribution by directing the assignment of newly generated subproblems to processes of the parallel program (non-preemptive load distribution). This so called task farming paradigm is only useful for a relatively small number of applications. Most numerical algorithms and simulation program...

متن کامل

A Distributed Dynamic Load Balancing Strategy Based on Rate of Change

Dynamic Load Balancing is an important system function destined to distribute workload among available processors to speed up the execution of computer programs whose workload varies at run-time in unpredictable ways. The non-uniform computation and communication requirements may bog down a parallel computer if no e cient load distribution is e ected. A novel distributed algorithm for load bala...

متن کامل

A tool for a two-level dynamic load balancing strategy in scientific applications

This paper describes a dynamic load balancing tool intended for computational investigators who have little familiarity with programming for a message-passing environment. Motivated by the PAR DOALL directive available in some compilers for shared-memory systems, the tool is designed to simplify the manual conversion of sequential programs containing computationally intensive oneor two-dimensio...

متن کامل

Dynamic Load Balancing in a Message Passing Virtual Parallel Machine Dynamic Load Balancing in a Message Passing Virtual Parallel Machine

In this paper we will look into the problem of dynamic balancing of tasks in a het-erogenous parallel computing environment. The parallel programs are assumed to be executed in the Single Program Multiple Data (SPMD) style. The criteria for re-balancing the load are discussed; the eeect of data movement required in the load balancing is considered; and novel algorithms of dynamic load balancing...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999